package org.lc.stk.model.user.permission;

import org.hibernate.annotations.Comment;

import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.Table;

/**
 * 题库权限
 */
@Entity
@Table(name = "question_bank_permission")
@Comment("题库权限")
public class QuestionBankPermission extends Permission {
    
    @Column
    @Comment("是否可以创建题库")
    private Boolean canCreateBank = false;

    @Column
    @Comment("是否可以管理题库")
    private Boolean canManageBank = false;

    @Column
    @Comment("是否可以查看题库")
    private Boolean canViewBank = false;

    @Column
    @Comment("是否可以添加题目")
    private Boolean canAddQuestion = false;

    @Column
    @Comment("是否可以编辑题目")
    private Boolean canEditQuestion = false;

    @Column
    @Comment("是否可以删除题目")
    private Boolean canDeleteQuestion = false;

    @Column
    @Comment("是否可以审核题目")
    private Boolean canReviewQuestion = false;

    @Column
    @Comment("是否可以创建试卷")
    private Boolean canCreatePaper = false;

    @Column
    @Comment("是否可以管理试卷")
    private Boolean canManagePaper = false;

    @Column
    @Comment("是否可以审核试卷")
    private Boolean canReviewPaper = false;

    public Boolean getCanCreateBank() {
        return canCreateBank;
    }

    public void setCanCreateBank(Boolean canCreateBank) {
        this.canCreateBank = canCreateBank;
    }

    public Boolean getCanManageBank() {
        return canManageBank;
    }

    public void setCanManageBank(Boolean canManageBank) {
        this.canManageBank = canManageBank;
    }

    public Boolean getCanViewBank() {
        return canViewBank;
    }

    public void setCanViewBank(Boolean canViewBank) {
        this.canViewBank = canViewBank;
    }

    public Boolean getCanAddQuestion() {
        return canAddQuestion;
    }

    public void setCanAddQuestion(Boolean canAddQuestion) {
        this.canAddQuestion = canAddQuestion;
    }

    public Boolean getCanEditQuestion() {
        return canEditQuestion;
    }

    public void setCanEditQuestion(Boolean canEditQuestion) {
        this.canEditQuestion = canEditQuestion;
    }

    public Boolean getCanDeleteQuestion() {
        return canDeleteQuestion;
    }

    public void setCanDeleteQuestion(Boolean canDeleteQuestion) {
        this.canDeleteQuestion = canDeleteQuestion;
    }

    public Boolean getCanReviewQuestion() {
        return canReviewQuestion;
    }

    public void setCanReviewQuestion(Boolean canReviewQuestion) {
        this.canReviewQuestion = canReviewQuestion;
    }

    public Boolean getCanCreatePaper() {
        return canCreatePaper;
    }

    public void setCanCreatePaper(Boolean canCreatePaper) {
        this.canCreatePaper = canCreatePaper;
    }

    public Boolean getCanManagePaper() {
        return canManagePaper;
    }

    public void setCanManagePaper(Boolean canManagePaper) {
        this.canManagePaper = canManagePaper;
    }

    public Boolean getCanReviewPaper() {
        return canReviewPaper;
    }

    public void setCanReviewPaper(Boolean canReviewPaper) {
        this.canReviewPaper = canReviewPaper;
    }
}